System for wireless exchange of data with hand held devices

ABSTRACT

WebAngel is configurable to automatically fetch Internet content “favorites” based on a timer or any other selected condition. Environmental changes also trigger WebAngel to automatically fetch Internet content “favorites” based on a timer event or any environ mental condition. WebAngel is a pre-fetching engine (or user agent) that gathers local environmental parameters, sends them to an “analysis module” which arranges for advance sending of only that data that meets the requirement of the environmental data.

[0001] The following wireless devices pertain to this application. The term “Wireless Devices” encompasses all these devices unless specifically stated otherwise.

[0002] Handheld Web Based CD Players/Recorders

[0003] Handheld Web Based Cassette Player/Recorders

[0004] Handheld Web Based Digital Audio Tape (DAT) Player/Recorders

[0005] Handheld Web Based Video Gamer

[0006] Handheld Web Based Gamer & RC Controller

[0007] Web Based Handheld Book/Periodical “Reader”

[0008] Web Based Portable Music Synthesizers

[0009] Medical Image Reviewer

[0010] Medical Ultrasound System

[0011] Wearable Versions of the above Devices

[0012] Context Diagram

[0013] (See FIG. 1—WWW Wireless Logical Model with Encoded Data)

[0014] Web-Enabled Wireless Device Market Potential

[0015] One Billion Mobile Web-Enabled Wireless Devices by 2003 according to the Yankee Group (Boston)

[0016] Example Partners in Services and Products Company Service/Technology Palm ™ (3Com ™) Palm OS ™ & Palm ™ Electronic Hardware Design BellSouth ™ Wireless Data Network 3Com ™ Servers/Data Center & Internet Connection Yahoo ™ Content YellowPages.com ™ Content WebAngel ™ Browser Enhancement Software

[0017] Why Make Wireless Devices PalmÖ Compatible?

[0018] Fastest Time to Market

[0019] Leverage off Other Applications

[0020] Open Architecture

[0021] Most Advanced Wireless Solution for Handhelds

[0022] All Wireless Devices Have a Built in Global Positioning System

[0023] What is GPS?

[0024] Global Positioning Systems (GPS) are space-based radio positioning systems that provide 24 hour three-dimensional position, velocity and time information to suitably equipped users anywhere on or near the surface of the Earth (and sometimes off the earth).

[0025] For More Detailed Information

[0026] http://www.trimble.com/gps

[0027] What does GPS do for Owners of Wireless Devices?

[0028] The answer will become clear after the WebAngel section below

[0029] Handheld Web Based CD Player/Recorders

[0030] (See FIG. 2)

[0031] Combines CD Player/Recorder, MP3 Player, GPS and PalmÖ PDA

[0032] Features

[0033] Listen to any Music CD with Headphone Output

[0034] AM/FM Radio

[0035] Web Browser

[0036] WebAngel User Agent

[0037] Write any Downloaded Internet Content to CD

[0038] MP3 Format Music Files

[0039] Other Compressed Audio Files

[0040] Other Files

[0041] Read WinX & Mac Compatible Files into Device from CD

[0042] Display any XML/VML Format Internet Content

[0043] All Palm™ Basic Applications Included

[0044] Core Organizing Applications

[0045] Date Book

[0046] Address Book

[0047] To Do List

[0048] Memo Pad

[0049] Wireless Internet Messaging

[0050] Color Touch Screen Display

[0051] Battery or AC Adapter Powered

[0052] Cradle Compatible with iRDA Port

[0053] Upload CD Files to Host PC/Mac through iRDA Port

[0054] Handheld Web Based Cassette Player/Recorders

[0055] (See FIG. 3)

[0056] Listen to any Music Cassette with Headphone Output

[0057] AM/FM Radio

[0058] Web Browser

[0059] WebAngel User Agent

[0060] Write any Downloaded Internet Content to Cassette

[0061] MP3 Format Music Files (Analog, Possibly Digital

[0062] Other Compressed Audio Files (Analog, Possibly Digital)

[0063] Other Files (if Digital)

[0064] Read WinX & Mac Compatible Files into Device from Cassette

[0065] Display any XML/VML Format Internet Content

[0066] All Palm™ Basic Applications Included

[0067] Core Organizing Applications

[0068] Date Book

[0069] Address Book

[0070] To Do List

[0071] Memo Pad

[0072] Wireless Internet Messaging

[0073] Color Touch Screen Display

[0074] Battery or AC Adapter Powered

[0075] Cradle Compatible with iRDA Port

[0076] Upload CD Files to Host PC/Mac through iRDA Port

[0077] Headphone Compatible Output

[0078] Handheld Web Based Digital Audio Tape Player/Recorders

[0079] (See FIG. 3)

[0080] Combines DAT Player/Recorder, MP3 Player, GPS and PahmÖ PDA

[0081] Listen to any Music DAT with Headphone Output

[0082] AM/FM Radio

[0083] Web Browser

[0084] WebAngel User Agent

[0085] Write any Downloaded Internet Content to DAT

[0086] MP3 Format Music Files (Analog, Possibly Digital)

[0087] Other Compressed Audio Files (Analog Possibly Digital)

[0088] Other Files (if Digital)

[0089] Read WinX & Mac Compatible Files into Device from DAT

[0090] Display any XML/VML Format Internet Content

[0091] All Palm™ Basic Applications Included

[0092] Core Organizing Applications

[0093] Date Book

[0094] Address Book

[0095] To Do List

[0096] Memo Pad

[0097] Wireless Internet Messaging

[0098] Color Touch Screen Display

[0099] Battery or AC Adapter Powered

[0100] Cradle Compatible with iRDA Port

[0101] Upload CD Files to Host PC/Mac through iRDA Port

[0102] Headphone Compatible Output

[0103] Portable Player/Recorders (Boomboxes)

[0104] Built in Stereo Amplifier and Speakers

[0105] CD Player/Recorder

[0106] Cassette Player/Recorder

[0107] AM/FM Radio

[0108] Web Browser

[0109] WebAngel User Agent

[0110] Write any Downloaded Internet Content to CD

[0111] MP3 Format Music Files

[0112] Other Compressed Audio Files

[0113] Other Files

[0114] Read WinX & Mac Compatible Files into Device from CD

[0115] Display any XML/VML Format Internet Content

[0116] All Palm™ Basic Applications Included

[0117] Core Organizing Applications

[0118] Date Book

[0119] Address Book

[0120] To Do List

[0121] Memo Pad

[0122] Wireless Internet Messaging

[0123] Color Touch Screen Display

[0124] Battery or AC Adapter Powered

[0125] Cradle Compatible with iRDA Port

[0126] Upload CD Files to Host PC/Mac through iRDA Port

[0127] Headphone Compatible Output

[0128] Easy to Carry Handle

[0129] Battery or AC Adapter Powered

[0130] iRDA Port

[0131] Combines CD & Cassette Player/Recorder, MP3 Player, GPS and Palm™ PDA

[0132] Handheld Web Based Video Gamer Devices

[0133] (See FIG. 4)

[0134] WebGamer Combines Nintendo Gameboy, MP3 Player, GPS and PalmÖ PDA

[0135] WebRCgamer Combines Nintendo Gameboy, RC Controller, MP3 Player, GPS and PalmÖ PDA

[0136] Radio Remote Toys Controlled by WebRCgamer

[0137] Cars, Boats, Airplanes, Airships with Built in Video Cameras and Microphones Bluetooth and/or Other Radio Frequency Protocol for Communication Between Toy and WebRCgamer Controller

[0138] (See FIG. 5)

[0139] WebRCgamer Controls Vehicle and Provides Video Image and Audio Playback of Actually “Being” in the Vehicle!

[0140] Laser Tag with Radio Remote Vehicles!

[0141] (See FIG. 6)

[0142] Players “Shoot” at Each Other! WebRCgamer Keeps Score!

[0143] Alternative Technologies to “Shoot” Each Other

[0144] Radio Waves

[0145] Ultrasound

[0146] Video Camera and Microphone are Optional

[0147] Handheld Web Based Book/Periodical Reader

[0148] (See FIG. 7)

[0149] Combines Palm PDA, MP3 Player, GPS and SoftReaderÖ

[0150] With WebReader one could be Reading a “Free” Book off the Web

[0151] Advertising Embedded in Book

[0152] (See FIG. 8)

[0153] Adjustable Font Size for Easy Reading

[0154] One can Listen to a Book off the Web

[0155] Keeping the Reader's Voice Output (Like a Book on Tape)

[0156] (See FIG. 9)

[0157] Controls

[0158] Volume

[0159] Playback Speed Without Affecting Speech Timbre

[0160] Pause

[0161] Stop

[0162] Play

[0163] Sharing a Book—Mom's Away on a Business Trip

[0164] (See FIG. 10)

[0165] Feature Summary

[0166] Downloads Desired Reading Material off the Web

[0167] Color Touch Screen Display

[0168] Adjustable Playback Speed

[0169] Speech Engine for Accurate Cadence and Timbre

[0170] Text to Speech Engine for Text Only Input

[0171] “Outdoor” Case

[0172] Web Browser

[0173] WebAngel™ User Agent

[0174] Headphone Compatible Output

[0175] Headphones

[0176] Battery or AC Adapter Powered

[0177] Cradle Compatible with iRDA Port

[0178] Potential for at Least Two Product Offerings

[0179] WebReader 101

[0180] All Features Listed Above

[0181] WebReader 303

[0182] All Features Listed Above

[0183] “Sharing a Book” Capability

[0184] Music Synthesizers

[0185] Synthesizers with Physical Modeling Technology

[0186] What is Physical Modeling?

[0187] Computer Simulates Actual Operation of Musical Instruments

[0188] More Accurate Sound Synthesis of Practically Any Instrument Imaginable

[0189] More Dynamic than Sampled or Additive Synthesis

[0190] For The Piano

[0191] Digital Waveguides to Simulate Vibration Modes of the String

[0192] Simulates Piano Hammer Striking a String

[0193] Simulating the Sound Board and Piano Body

[0194] Capturing the “Soul” of the Piano

[0195] Extremely Complicated Instrument

[0196] Current Distal Pianos and Synthesizers are Still Inadequate

[0197] Processing Power Now a Possibility for Incredible Piano Emulation

[0198] High Speed Floating Point Digital Signal Processors Possible

[0199] Multiple Floating Points DSPs on a Single Die

[0200] RAM Costs Dramatically Reduced

[0201] Other Instruments (Patches) must be Available

[0202] General MIDI Specification—Over a 128 Different Instruments

[0203] Kniest Instruments Meet General MIDI and XG® Requirements

[0204] License Technology for Outside Sources

[0205] Kniest Synths can Change Instrument Materials for Different Sounds

[0206] Steel Clarinet

[0207] Wood Tuba

[0208] Plastic Flute

[0209] Mix and Match!

[0210] Clarinet Mouthpiece—Tuba Body

[0211] Trumpet Mouthpiece—Clarinet Body

[0212] Violin Bow on Piano (Instead of Hammer)

[0213] Piano Hammer on Guitar

[0214] Mobile Medical Assistant

[0215] (See FIG. 11)

[0216] Remote Diagnosis Context Diagrams

[0217] (See FIG. 12)

[0218] Context Diagrams—Continued

[0219] (See FIG. 13)

[0220] Remote Diagnosis Scenario

[0221] In this scenario, the doctor is guiding the exam remotely. The doctor in this case could be an OB-Gyn who is at home while one of his/her patients is in labor. Before deciding to go in to meet with the patient (in person), the doctor may direct the sonographer on where to “look” or place the probe on the patient's body.

[0222] Ultrasound Image and Video Camera Image on WebMedica Display

[0223] The WebMedica has two images on the display, the ultrasound image generated by the ultrasound machine and the camera output to help the doctor see where the transducer is placed on the woman's body. The camera output is processed by the ultrasound machine (or some other device) and sent to the server. The doctor has the option of controlling the video camera from WebMedica. Video camera control consists of focus, panning and zooming.

[0224] (See FIG. 14)

[0225] Doctor Provides Direction on Transducer Placement

[0226] The doctor provides direction to the sonographer by speaking into the WebMedica microphone, which records the voice input and sends it back to the ultrasound machine. The ultrasound machine outputs the doctor's orders through its embedded audio/speaker system.

[0227] Doctor and Patient Conference Capabilities

[0228] The doctor could also converse with the patient directly through the same medium.

[0229] It is conceived that some WebMedica devices could have a built in (or attachable) video camera to provide an image of the user back to the ultrasound machine. The ultrasound machine would output the video image on its monitor. Essentially then, it would be a “video conference” with the handheld device being one terminal, and the ultrasound machine being the other!

[0230] Remote Ultrasound Machine Control

[0231] The doctor could also CONTROL the settings on the ultrasound machine through WebMedica. This would reduce the technical requirements of the sonographer. It is conceived that the sonographer could be anyone willing to hold the transducer on the patient with guidance from a qualified medical professional.

[0232] Not Limited to Ultrasound Applications

[0233] This scenario is not limited to ultrasound applications. It is conceived that it could be used with any medical imaging modality.

[0234] Ultrasound Transducer Blanket System

[0235] Transducer “Blanket” Wrapped around (or Placed on) Patient

[0236] Blanket has Multiple Transducer Assemblies Embedded in it Ultrasound Machine uses one Transducer Assembly at a Time (Multiplexed)

[0237] Requires no Technical Expertise to Capture Medical Images

[0238] Good for Remote Diagnosis

[0239] Blanket has Velcro Strips Outside

[0240] Keep it in Place During Exam

[0241] Adjustable for Different Parts of the Body

[0242] Ultrasound Transducer Blanket System Context Diagram

[0243] (See FIG. 15—Exam Site—Ultrasound Transducer Blanket)

[0244] Each Transducer Assembly may have a Global Positioning System

[0245] Global Positioning System with Higher Resolution (Local System) Allows 3D Imaging!

[0246] (See FIG. 16—Inside Ultrasound Transducer Blanket)

[0247] Transducer Assembly Diagram

[0248] (See FIG. 17)

[0249] Ultrasound Blanket could be a Pad

[0250] Multiple Transducers Embedded in Pad that is Placed at Strategic Points on the Body

[0251] (See FIG. 18—Inside Ultrasound Transducer Pad)

[0252] Pad has Strap to Keep it Stationary

[0253] (See FIG. 19)

[0254] Blanket (or Pad) is Inflated Similarly to the Blood Pressure Sleeve to

[0255] Blanket (or Pad) is Inflated Similarly to the Blood Pressure Sleeve to Ensure Good Coupling to the Body

[0256] (See FIG. 20)

[0257] Ultrasound Exam Procedure

[0258] Ultrasound Coupling Gel is Applied to Entire Surface of Pad or Blanket

[0259] Pad or Blanket is then Placed on Area of Interest

[0260] If Needed, Pad or Blanket is Strapped to Patient

[0261] If Needed, Pad or Blanket is then Inflated to Ensure Proper Pressure Against Body

[0262] Ultrasound Images Gathered and Processed

[0263] Ultrasound Machine may be Smaller or have Wireless Functionality!

[0264] (See FIG. 21)

[0265] WebAngel Software

[0266] Pre-Fetching Engine Gathers Information in Advance

[0267] Uses Currently Viewed Content for Links to Other Web Sites

[0268] Timer Driven Automatic Update

[0269] Favorite Refresh Automatic Update

[0270] Environmental Change Automatic Update

[0271] Adaptable Feature Configuration

[0272] Automatic Push

[0273] Changing Conditions Where WebAngel Automatically Forward

[0274] Caches, Pushes or Modifies the Feature Configuration Time of Day/Week/Year Time Since Last Weather Content Update Velocity Acceleration/ Location Deceleration Specific User/Owner Security Other Safety Constraints/Danger Vibration/Impact/ Ambient Noise Humidity Earthquakes Pitch Depth Altitude Device Temperature Ambient Temperature Client or Server Temperature Nuclear Radiation Other Conditions of EMI/RFI Devices Wind Velocity Odor Detection Ambient Light Chemical Detection Construction Detour Service/Fuel Availability Dust/Pollution Plague/Pestilence New Laws/Judicial/ Scheduled Time/Event Health of Person or Government People X-Rays Gamma Rays Ultrasound Traffic Rioting Wetness Spectral Content of Light Spectral Content of Acts of God Sound E-mail Network Messages New User Input Diagnostic Failure of a Internet Web Site Server Traffic on Device “Hits” Network Client Traffic on Network Internet Traffic Changes in Internet Content

[0275] Connection Arbitration

[0276] WebAngel Automatically “Finds” Most Appropriate Wireless Protocol

[0277] Example.: Kniest Device Needs to Connect to Internet. Kniest Device has two protocols for Wireless Connection. Bluetooth and BellSouth™. WebAnel would “Search” for Bluetooth Server First (which may be Free), then Wireless Network Supplied by say, BellSouth™ which may have Connection Charges

[0278] Image Enhancements

[0279] Edge Detection

[0280] Line Interleave

[0281] Grayscale Adjustment

[0282] Chroma

[0283] Multiple Displays

[0284] Pan and Zoom

[0285] Image Measurements

[0286] Distance

[0287] Area

[0288] Volumes

[0289] Velocity (Medical Application)

[0290] User Agent Software

[0291] The following diagram illustrates how WebAngel fits into the host software:

[0292] (See FIG. 22)

[0293] WebAngel includes any of the above user agents or services/formats.

[0294] User Agent Software on World Wide Web

[0295] (See FIG. 23—WWW Logical Model)

[0296] Wireless Device Context

[0297] (See FIG. 24—WWW Wireless Logical Model Without Encoding or Decoding Data)

[0298] WebAngel Utilizing Encoded Data

[0299] (See FIG. 25—WWW Wireless Logical Model)

[0300] WebAngel Running Partially on Server(s) (Encoded or Decoded)

[0301] (See FIG. 26—WWW Wireless Logical Model With WebAngel Client and Server)

[0302] Data in this case is processed on another device (through a network, Intranet or over the web also):

[0303] (See FIG. 27—WWW Wireless Logical Model With WebAngel Server on Multiple Devices)

[0304] Data processing in the above case means converting it to another format for transmission or interpreting the content and refining it for the client.

[0305] WebAngel Software Detailed Description

[0306] Cache Forward Engine Gathers Information in Advance Uses Currently Viewed Content for Links to Other Web Sites

[0307] WebAngel pre-fetches or “forward caches” data. For example, the browser (which may or may not be part of WebAngel) reports back that there is interest in a specific area of information (which means it is being displayed or TTS to the user). WebAngel monitors how long the user “listens” or views a specific card (or area of the web page), which might have hyperlinks to other content. WebAngel then pre-fetches or forward caches the new information to be split into cards ready for viewing and/or text to speech.

[0308] Another example is as follows: The user loads a web page. As it is being downloaded (and displayed) the user reads (or listens to) the web page and its contents. If the user comes across something of interest, he/she may “highlight” or “select” an area that he/she is reading to give some feedback to the browser or WebAngel that this subject is of interest. WebAngel “looks” through the content for any links that are in that area and then fetches them (without output) while the user continues to read the current page.

[0309] At some time later, the user either selects a new area of interest in the current page/card or “selects related pages” to download. If the user selects the hyperlink that is already downloaded, it is then ready for review. Selection is done with a “mouse” like device, pointer, keyboard, clicker, buttons or speech. Selection also means WebAngel keeps tract of how long the card is being displayed or read. If it is long enough, WebAngel may search the current card for links to other content and start the Forward Cache process from there.

[0310] WebAngel is capable of being commanded to “store” up information requests, and download them as fast as possible for later viewing/listening. For example, the user may want to download all songs written and performed by Elton John. WebAngel then is “started” at some address by the user and start searching ALL links at that site. It then downloads any “hits” and stores as many as possible on some medium like a hard disk, or CD/ROM, etc. Any other sites that are linked to the original may have other links are searched automatically.

[0311] Timer Driven Automatic Update

[0312] WebAngel is configurable to fetch Internet content automatically based on the time of day or some other event has occurred.

[0313] Favorite Refresh Automatic Update

[0314] WebAngel is configurable to automatically fetch Internet content “favorites” based on a timer or any of the other conditions listed below.

[0315] Environmental Change Automatic Update

[0316] If configured properly, environmental changes trigger WebAngel to automatically fetch Internet content “favorites” based on a timer event or any of the other conditions listed below. In this case, WebAngel is a pre-fetching engine (or user agent) that gathers local environmental parameters, sends them to an “analysis module” (part of WebAngel, which may “runs” on a different computer), which arranges for advance sending of only that data that meets the requirement of the environmental data.

[0317] Adaptable Feature Configuration

[0318] For example, suppose the device that is “running” WebAngel software is a computer in a truck, connected to the World Wide Web over a wireless connection. The computer has other inputs (e.g. Global Position or vehicle sped (MPH) reading) to notify it when the truck is moving or not. If the truck is moving (not parked), WebAngel may be configured to not display pictures or text that may distract the driver and create a safety issue. Instead, WebAngel may output by text to speech (TTS) the textual presentations of the information requested. When parked, WebAngel may be able to show the pictures and text on the display.

[0319] Another example may be, when the truck is moving, WebAngel is configured to not pre-fetch or “cache forward”.

[0320] Automatic Push

[0321] On some event or time (see next section) WebAngel is capable of pushing content to a client (which under “normal” conditions, may be a server or other computer). This may be in the form of e-mail or updated content.

[0322] Changing Conditions Where WebAngel Automatically Forward Caches, Pushes or Modifies the Feature Configuration

[0323] The table below is a summary of “external” and “internal” conditions which can trigger WebAngel to forward cache, push or modify its feature configuration: Time of Day/Week/Year Time Since Last Weather Content Update Velocity Acceleration/ Location Deceleration Specific User/Owner Security Other Safety Constraints/Danger Vibration/Impact/ Ambient Noise Humidity Earthquakes Pitch Depth Altitude Device Temperature Ambient Temperature Client or Server Temperature Nuclear Radiation Other Conditions of EMI/RFI Devices Wind Velocity Odor Detection Ambient Light Chemical Detection Construction Detour Service/Fuel Availability Dust/Pollution Plague/Pestilence New Laws/Judicial/ Scheduled Time/Event Health of Person or Government People X-Rays Gamma Rays Ultrasound Traffic Rioting Wetness Spectral Content of Light Spectral Content of Acts of God Sound E-mail Network Messages New User Input Diagnostic Failure of a Internet Web Site Server Traffic on Device “Hits” Network Client Traffic on Network Internet Traffic

[0324] Image Enhancements

[0325] Edge Detection

[0326] WebAngel searches the image that is to be displayed for edges, where it then “outlines” the image in black or some other color appropriate to the image. There are many edge detection algorithms already developed for other applications.

[0327] Line Interleave

[0328] WebAngel takes an image and interleave intermediate pixel data for a better quality image when zoomed up or magnified. For example, here is one algorithm for doing this:

[0329] For this example, suppose the image (and display) is 100 by 100 pixels in size. It is desired to zoom up the image to double the image size or quadruple the number of pixels to display. So the new image is 200 by 200 pixels, but only ¼^(th) the zoomed image is displayed at one time due to display size limitations. WebAngel “fills” every other new pixel with half the value from the previous pixel with half the value of the next pixel:

[0330] Original Image

[0331] P1 P2 P3 P4 P5 . . . P100

[0332] P101 P102 P103 P104 P105 . . . P200

[0333] New Image

[0334] P1 (P1+P2)/2 P2 (P2+P3)/2 P3 (P3+P4)/2 P4 (P4+P5)/2 P5 . . . P100

[0335] (P1+P101)/2 ((P1+P2)/2)+((P101+P102)/2)/2 and so on . . .

[0336] P101 (P101+P102)/2 and so on . . . P200 (which is now P300)

[0337] There are many line interleave algorithms already being used.

[0338] Pan and Zoom

[0339] PS and Zoom of displayed images since display may be quite small. Panning the image is done with a trackball type device to “move around” the image, or broken into pieces like in the storyboard below, or as done in the TruckPC™ section later in this document.

[0340] In the following storyboards, WebAngel has broken Internet content into cards (or received them that way if in WAP format). The operator gets to choose whether or not to view pictures. Only voice commands are shown here for simplicity sake. The “Presentation Manager” discussed below is part of WebAngel, or another application that actually displays the images:

[0341] (See FIG. 28)

[0342] (See FIG. 29)

[0343] (See FIG. 30)

[0344] (See FIG. 31)

[0345] Grayscale Adjustment

[0346] WebAngel allows the user to adjust the gamma curves to allow for better viewing a color image on a black and white display.

[0347] Chroma

[0348] If the client device has a color display, WebAngel takes a black and white image and assign a gradually darkening color (e.g. blue) instead of black for better visibility. Ultrasound medical devices use this feature to allow detection of subtle gradations of tissue in medical images. The gamma curve adjustment feature is also incorporated (as stated above) in the “Grayscale Adjustment” section.

[0349] Multiple Displays

[0350] WebAngel is capable of output with one display format, while converting the data for a different display. For example, a computer in a truck may have a black and white primary display (for the driver and passenger) with a color RGB output for a remote display in the sleeper.

[0351] Image Measurements

[0352] It may be desirable to actually “measure” an object on the display. WebAngel allows the user to place cursors on an image and show the distance between them (based on the information provided for distance per pixel). Areas, velocities (e.g. blood flow) and even volumes of objects on images are estimated using a variety of measurement schemes already developed for medical imaging devices (e.g. ultrasound machines).

[0353] Content to Cards for Text Output

[0354] See the glossary (Appendix A) for the description of “cards” and “deck”. Output Includes both Displayed Text and Speech (TTS)

[0355] Standard Markup Languages/Scripts Parsed Into Cards

[0356] SGML

[0357] HTML

[0358] XML

[0359] VML

[0360] CGI

[0361] Java

[0362] Others

[0363] Already Parsed Data From Another Source (i.e. WAP)

[0364] VML

[0365] Tones

[0366] The text to speech (TTS) output is configurable to identify when an end of a card has been read, audio file, picture or hyperlink is available. Another way to notify the user “audibly” is to generate different tones for each type of “event”. The tone is generated as an “overlay”, or on top of the text (or just after it).

[0367] Pause

[0368] WebAngel allows the user to “pause” reading the text or listening to an audio file.

[0369] Replay

[0370] WebAngel goes back 10 seconds or so, and replay what was just listened to.

[0371] Deck Navigation

[0372] As stated earlier, the web based content is divided up into cards by either WebAngel, another user agent, or done already in the WAP environment. WebAngel then allows the user to navigate the deck with the following features:

[0373] Go-Back or Skip

[0374] WebAngel allows the user to move to other cards backwards and forwards.

[0375] Seek

[0376] The user may have just the first line or phrase of each card read. WebAngel then automatically switches to the next card and repeats the process, until the user disables this feature to “stay” on the current card or stop the whole process. It also cab be set up to read (display) each card for a specified amount of time before switching to the next one. WebAngel identifies each new card with either a tone, text on the display or speech. If the seek feature finishes with the last card, it starts with the first one again, or prompts the user that the end has been reached with a tone, displayed text or speech.

[0377] Find Key Word

[0378] WebAngel searches the deck for key word(s) or phrases that the user specifies. It may do this before displaying/reading any of the cards in the deck, or at any time during the “card reading/displaying” process. Once found, the card is displayed/read to the user as the new starting point.

[0379] Web Browsing with Wireless Devices

[0380] General Description

[0381] The content is in SGML, HTML, XML or VML format (so that it can be read on a standard VGA display also). The browser handles CGI, Java Scripts and VMLScript.

[0382] Saving Web Pages

[0383] The user can able to save at least eight web pages in flash memory.

[0384] Browsing

[0385] The look and feel of the browser is outlined in the next few pages.

[0386] Typical Web Page

[0387] (See FIG. 32)

[0388] Fit it into a PDA-sized Small Space!

[0389] A Quarter of the Full VGA Output Fits!

[0390] (See FIG. 33)

[0391] (See FIG. 34)

[0392] User Taps Horizontal Scroll Bar to Move Image Right

[0393] Another Tap Puts the Web Page in the Center Horizontally

[0394] (See FIG. 35)

[0395] Vertical Scroll Bar All the Way Down, Horizontal Bar to the Left

[0396] (See FIG. 36)

[0397] Text Entry Using Stylus

[0398] (See FIG. 37)

[0399] E-Mail Web Site Links

[0400] The browser can to “go to” a site from a hyperlink contained in an e-mail message.

[0401] Browser Configuration

[0402] Favorite Web sites

[0403] As stated earlier, the user can add/remove at least eight favorite web sites.

[0404] If there are already eight web sites saved, the user is prompted with the following on the display: “Maximum sites have been saved. Would you like to delete an older one?” If the user responds with the “No” button, the sequence is aborted and the computer waits for the user to continue browsing.

[0405] Conversely, if the user responds presses the “Yes” soft key, the browser displays in menu format the first of the eight sites already saved and then allow the user to delete the unwanted one. If none are “over-written” then the browser starts with the first one again. The operator at any time can abort the sequence.

[0406] Sound File Playback

[0407] When a sound file is available, the web browser notifies the user that it is available. If the user selects playing it (in this case with the stylus), the file is output through the audio system.

[0408] While the sound file is being played, the display shows: “Sound File XXX”. Buttons for stopping (and pause) the playback must be made available.

[0409] Text to Speech (TTS)

[0410] Some devices have the text to speech feature. Buttons are provided to “play” the text on the display through the audio system. Buttons for stopping (and pause) the playback are also available.

[0411] Help

[0412] Anytime the help button is pressed the browser displays what functionality the soft and hard keys provide.

[0413] Wearable Wireless Devices

[0414] Any of the Above Kniest Wireless Devices Wearable on Body!

[0415] Portable “Movie Screens” for Larger Images (Even Full VGA!)

[0416] Internal Video Projection Device for Screen or Wall

[0417] Projection Video can be Turned off to Save Power

[0418] Small Embedded Liquid Crystal Display Included for Control

[0419] Other Models may have Buttons or “Mousepad” Device

[0420] Tape or CD Drives are in Separate Enclosure Worn on Different Part of Body

[0421] Connected to “Control Unit” (with Display) by Bluetooth Wireless or Other Radio Frequency Protocol

[0422] Worn on Forearm Wireless Device

[0423] Strap Detachable, so Unit can sit on Table

[0424] (See FIG. 38)

[0425] Another Version: Display Driven from the Rear For Smaller Form Factor

[0426] Video Reversible, for Both Modes of Operation (Wall or Screen)

[0427] (See FIG. 39)

[0428] Another Version (not shown) has Projector Mounted on Small Portable Stand that can be Projected on Desk or Wall.

[0429] Wireless Link (Bluetooth) with Device

[0430] Stand and Video Projector is Stored in Device when not Needed or Carried Separately

[0431] Strap Made of Gore-Tex® Type Material to Minimize Sweating

[0432] Bottom of Electronics Enclosure also Gore-Tex Where it Meets Skin

[0433] (See FIG. 40—Side View of Electronics Enclosure) APPENDIX A Glossary of Terms and Acronyms Term/Acryonym Description API Application Programming Interface FTL Freightliner GPS Global Positioning System HTML Hyper Text Markup Language HTTP Hyper Text Transfer Protocol IP Internet Protocol MS Microsoft OEM Original Equipment Manufacturer PC Personal Computer RAM Random Access Memory ROM Read Only Memory SAE Society of Automotive Engineers SRS Software Requirements Specifications TBD To Be Defined TCP/IP Transmission Control Protocol/Internet Protocol TMC The Maintenance Council TTS Text to Speech USB Universal Serial Bus WWW World Wide Web Card A single markup language (e.g. WML, HTML) unit of navigation and user interface. May contain information to present to the user, instructions for gathering user input, etc. Client A device (or application) that initiates a request for connection with a server. Client Server Communication between a client and a server. Communication Typically the server performs a task (such as generating content) on behalf of the client. Results of the task are usually sent back to the client (e.g., generated content.) Content Synonym for data objects. Content Encoding When used as a verb, content encoding indicates the act of converting a data object from one format to another. Typically the resulting format requires less physical space than the original, is easier to process or store and/or is encrypted. When used as a noun, content encoding specifies a particular format or encoding standard or process. Content Format Actual representation of content. Content A service that generates or formats content. Typically Generator content generators are on origin servers. Deck A collection of markup language (e.g. WML, HTML) cards. A deck may also be an XML document. May contain WMLScript or JavaScript Device A network entity that is capable of sending and receiving packets of information and has a unique device address. A device can act as both a client and a server within a given context or across multiple contexts. For example, a device may service a number of clients (as a server) while being a client to another server. Distance root The root-mean-square value of the distances from the mean square true location point of the position fixes in a collection (drms) of measurements. As typically used in GPS positioning, 2 drms is the radius of a circle that contains at least 95 percent of all possible fixes that can be obtained with a system at any one place. GPS The U.S. Department of Defense Global Positioning System: A constellation of 24 satellites orbiting the earth at a very high altitude. GPS satellites transmit signals that allow one to determine, with great accuracy, the locations of GPS receivers. The receivers can be fixed on the Earth, in moving vehicles, aircraft, or in low-Earth orbiting satellites. GPS is used in air, land and sea navigation, mapping, surveying and other applications where precise positioning is necessary. GPS ICD-200 The GPS Interface Control Document is a government document that contains the full technical description of the interface between the satellites and the user. JavaScript A de facto standard language that may be used to add dynamic behaviour to HTML documents. JavaScript is one of the originating technologies of ECMAScript. Modem A modulator/demodulator. When two computers communicate over telephone lines and similar media, digital signals must be converted to analog during transmission, then back again to digital at the destination. Modems are always used in pairs, one at each end. They are rated according to the speed, typically in “bits per second,” at which the information can pass through the transmission medium. Origin Server The server on which a given resource resides or is to be created. Often referred to as a web server or HTTP server. Pre-Fetch In this case, WebAngel software “looks and downloads” Internet content automatically. Push Unsolicited “sending of information” to a client device. Resource A network data object or service that may be identified by a URL. Resources may be available in multiple representations (e.g., multiple languages, data formats, size and resolutions) or vary in other ways. Server A device (or application) that passively waits for connection requests from one or more clients. A server may accept or reject a connection request from a client. SGML The Standardised Generalised Markup Language (defined in [ISO8879]) is a general purpose language for domain specific mark up languages. Standard The normal civilian positioning accuracy obtained by Positioning using the single frequency C/A code. Under selective Service (SPS) availability conditions, guaranteed to be no worse than ˜10 meters 95 percent of the time (2 drms). User A user is a person who interacts with a user agent to view, hear or otherwise use a resource. User Agent A user agent is any software or device that interprets content (e.g., WML, XML, SGML, HTML). This may include textual browsers, voice browsers, search engines, etc. WebAngel WebAngel is the trademark for a kind of computer software package that runs “on top” of a World Wide Web browser (a user agent). It controls the user agent software, or it incorporates a browser. It is to be considered just part of the user agent, or all of it depending on the application. WebAngel Client Software subset of WebAngel software that runs on the client. WebAngel Server Software subset of WebAngel software that runs on a server. NOT DONE FOR THIS APPLICATION 

I claim:
 1. A system for wireless exchange of data with hand held devices comprising a hand held device having operatively installed therein a browser and at least one user agent, the device wirelessly connected to a wireless gateway server, the gateway server operatively connected to an origin server via a global information exchange network. 